ドメイン駆動設計入門 ボトムアップでわかる!ドメイン駆動設計の基本
ドメイン駆動設計入門 ボトムアップでわかる!ドメイン駆動設計の基本
用語
ユビキタス言語
ドメインエキスパート
境界づけられたコンテキスト
エンティティ
値オブジェクト
用語は大別すると2種類
モデリング
ソフトウェアにとって重要な概念を抽出するため
概念を実装に落とし込むパターン
ドメイン駆動設計とは
パターン
知識を表現するパターン
値オブジェクト
エンティティ
ドメインサービス
アプリケーションを実現するためのパターン
リポジトリ
アプリケーションサービス
ファクトリ
知識を表現する、より発展的なパターン
集約
仕様
知識表現が、アプリケーション表現に利用される
システム固有の値を表現する値オブジェクト
ライフサイクルのあるオブジェクト「エンティティ」
不自然さを解決する「ドメインサービス」
データにまつわる処理を分離する「リポジトリ」
ユースケースを実現する「アプリケーションサービス」
柔軟性をもたらす依存関係のコントロール
ソフトウェアシステムを組み立てる
複雑な生成処理を行う「ファクトリ」
データの整合性を保つ
アプリケーションを1から組み立てる
ドメインのルールを守る「集約」
複雑な条件を表現する「仕様」
アーキテクチャ
ドメイン駆動設計の扉を開こう